Method and system for decoding signals, corresponding receiver and computer program product

ABSTRACT

A system for the transmission of signals comprises a transmitter configured for transmitting signals x t , encoded with a mapping, with different and separable configurations in the real part and the imaginary part of the signal. These may be, for example, signals x t  encoded according to a Gray mapping, signals x t  encoded with two QAM mappings, encoded signals x t  transmitted on a selective Multiple-Input/Multiple-Output (MIMO) channel and/or encoded signals x t  multiplexed with an Orthogonal-Frequency-Division-Multiplexing (OFDM) technique. The corresponding receiver is configured for decoding in a distinct way the real part R(x t ) and the imaginary part I(x t ) of said signals, and typically comprises a filter for subjecting said encoded signals x t  to a Wiener filtering {circumflex over (x)} t , and a Minimum-Mean-Square-Error (MMSE) detector configured for minimizing the mean-square error between said encoded signals x t  and the result of said Wiener filtering {circumflex over (x)} t . The receiver can comprise a soft decoder for performing a soft estimation of the signals transmitted by each of said antennas of said plurality, and cancelling, using the results of said soft estimation, the interference produced on the signals transmitted from each of said antennas of said plurality by the signals transmitted from the other antennas of said plurality.

PRIORITY CLAIM

This application claims priority from European patent application No. 05425526.0, filed Jul. 21, 2005, which is incorporated herein by reference.

TECHNICAL FIELD

An embodiment of the present invention relates to signal-decoding techniques.

BACKGROUND

Wireless Local Area Networks (W-LANs) have become a widespread technology on the telecommunications market for providing a wide-band connectivity between computers and other electronic devices. W-LANs are currently deployed in various environments, for example industrial companies and public and residential premises, in so far as they enable a high-speed data access for users. The most recent standards, IEEE 802.11a and 802.11 g, are able to provide transmission rates of up to 54 Mb/s, exploiting, as technology for the physical layer (PHY), a technique of Orthogonal Frequency Division Multiplexing (OFDM) and a Bit-Interleaved Coded Modulation (BICM) on 5.2 GHz and 2.4 GHz, respectively. However, the demand for high-rate services for data is continuously growing, and a wider range of coverage is much appreciated in these types of applications. These factors are currently leading to the definition of a new W-LAN standard based upon an innovative technology capable of improving the performance of the entire system.

The adoption of OFDM reduces the complexity of equalization at the expense of a partial loss in bandwidth due to cyclic prefix insertion.

Thanks to pseudo-random bit interleaving, in order to de-correlate successive encoded bits the channel encoder and the QAM modulator (QAM—Quadrature Amplitude Modulation) can be selected independently, thus providing the possibility of different system configurations.

Multiple-Input/Multiple-Output (MIMO) radio interfaces have been studied in depth over the last few years, and have been widely considered as a suitable solution for improving the performance of modern wireless communication systems. The joint use of MIMO and OFDM techniques, in combination with a Space-Frequency Bit-Interleaved-Coded-Modulation (SF-BICM) architecture, as described in D. Zuyderhoff, X. Wautelet, A. Dejonghe, and L. Vandendorpe, “MMSE turbo receiver for space-frequency bit-interleaved coded OFDM”, IEEE Vehicular Technology Conference, 2003, which is incorporated by reference has proven able to provide a high data rate and simultaneously a mitigation of the effects of channel fades.

New-generation W-LAN systems, in addition to guaranteeing an ever-faster data rate, should also guarantee higher levels of performance in terms of system reliability. These factors lead to adopting, at the receiver end, innovative, yet at the same time sophisticated, techniques of decoding and detection, such as, for example, ones based upon the “turbo”-MIMO principle.

To concentrate on the aspect of detection, the optimal technique is based upon the MAP algorithm, which maximizes the a-posteriori probability (MAP—Maximum A-posteriori Probability). The MAP algorithm may, however, not be physically implementable, above all when combined with a high order of modulation, as in the case of 64-QAM.

In fact, by adopting more than one antenna at both the transmitter end and the receiver end, the computational complexity is found to grow exponentially with the order of modulation and also with the number of transmitting antennas.

Consequently, in order to cope with questions of complexity and performance, sub-optimal schemes have been proposed, based upon simpler detectors, such as Minimum-Mean-Square-Error (MMSE) detectors to be used in iterative decoding and detection schemes instead of the MAP algorithm, which, as has been said, maximizes the a-posteriori probability. However, even using MMSE detectors, the computational complexity increases proportionally with the number of iterations, with a consequent major impact also on the latency constraints. Finally, also the constraints on the size of the memory can become a significant aspect especially at the user-terminal end.

SUMMARY

From the foregoing description of the current situation, there exists a need to define solutions that enable exploitation of the advantages linked to MIMO techniques, without this entailing any increase in the computational, and hence, circuit complexity, which may render impractical the application of these techniques in widespread application contexts.

In accordance with an embodiment of the present invention, a method that meets this need is provided. Embodiments of the present invention also relate to a corresponding system, the corresponding receiver, as well as a computer-program product, loadable into the memory of at least one computer, and comprises software code portions for implementing the aforesaid method. As used herein, the reference to such a computer-program product is understood as being equivalent to the reference to a computer-readable medium containing instructions for controlling a computer system for the purpose of coordinating execution of a method according to an embodiment of the invention. The reference to “at least one computer” is intended to highlight the possibility for an embodiment of the present invention to be implemented in a distributed and/or modular way.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more embodiments of the invention will now be described, by way of non-limiting example, with reference to the drawings.

FIG. 1 shows an example of a block diagram of a system in which the solution described herein is applied according to an embodiment of the invention. FIG. 2 shows an example of mapping of the symbols for 16-QAM Gray coding obtained as a combination of two 4-PAM Gray mappings (PAM—Pulse-Amplitude Modulation) according to an embodiment of the invention.

FIG. 3 shows an example of mapping of an 8-PAM Gray coding according to an embodiment of the invention.

FIG. 4 shows an example of definition of the metrics with choice of the subset of symbols based upon minimum distance according to an embodiment of the invention.

FIG. 5 shows an example of definition of the metrics with choice of the subset of symbols based upon maximum a-posteriori probability (MAP) according to an embodiment of the invention.

FIG. 6 shows an example of calculation of the distances between two points of a constellation with the mean power not normalized to unity according to an embodiment of the invention.

FIG. 7 shows a graph that gives the performance of various systems with a 16-QAM Gray mapping according to an embodiment of the invention.

FIG. 8 shows a graph that gives the performance of various systems with a 64-QAM Gray mapping according to an embodiment of the invention.

DETAILED DESCRIPTION

The exemplary embodiments described herein have the purpose of reducing the complexity of a turbo-MIMO-MMSE reference scheme, targeting a significant reduction in the number of computations of the main blocks used in the iterative detection process. In particular, the main blocks are a soft-interference estimator (SIE), a MMSE detector, and the QAM soft de-mapper. The first two blocks are simplified by exploiting, respectively, Gray coding and the properties of matrix algebra, without introducing any approximation with respect to the formulas proposed in the literature. Instead, the last block has been simplified by proposing an appropriate method that approximates the calculation of the log-likelihood ratio (LLR) with respect to the standard computational method.

In particular, consider a scenario with T antennas at the transmitter end and R antennas at the receiver end. Then suppose that a stream of 1000-byte data packets is generated in a W-LAN. The stream is encoded with a 64-state ½-rate convolutional encoder, subjected to interleaving and mapped on an N-QAM Gray constellation (with N=4, 16, 64, . . . ). The physical framing format of the packet is generated in accordance with the specifications of the W-LAN standard 802.11a but imposing that the number S of OFDM symbols for transmission on the air should be a multiple of the number T of antennas at the transmitter end and adopting for the data a number of subcarriers equal to 56.

The block diagram illustrated in FIG. 1 summarizes the main operations applied on a W-LAN-packet in the case where the number of antennas at the transmitter end T is 2, and the number of antennas at the receiver end R is 2. Of course, any extension to a larger number of antennas is straightforward.

A MIMO frequency-selective channel is represented by the matrix H^((f))εC^(R×T): $\begin{matrix} {H^{(f)} = \begin{bmatrix} h_{1}^{(f)} & h_{2}^{(f)} & \cdots & h_{T}^{(f)} \end{bmatrix}} & (1) \end{matrix}$ where f=1, 2, . . . , F is the frequency index, h_(t) ^((f)) are column vectors, the elements of which h_(r,t) ^((f)) represent the paths between the transmitter t and the receiver r, at the f-th tone. These elements are normalized as follows: $\begin{matrix} {{\frac{1}{F}{\sum\limits_{f = 1}^{F}{E\left\lbrack {h_{r,t}^{(f)}}^{2} \right\rbrack}}} = 1} & (2) \end{matrix}$ with t=1, 2 . . . , T, and r=1, 2, . . . , R. The channel coefficients h_(r,t) are generated, according to the indoor MIMO channel model, for environments with high levels of scattering.

For reasons of simplicity, the index f is omitted in the remaining part of the description in so far as OFDM enables consideration of each tone independently of the others. Hence, all the equations appearing from this point on will be referred to a single OFDM data tone. In this way, the signal received can be written as follows: y=Hx+n  (3) where $\begin{matrix} {{x = {\begin{bmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{T} \end{bmatrix} \in C^{T}}}{y = {\begin{bmatrix} y_{1} \\ y_{2} \\ \vdots \\ y_{R} \end{bmatrix} \in C^{R}}}} & (4) \end{matrix}$ are the vectors of the symbols transmitted and received respectively, and $\begin{matrix} {n = {\begin{bmatrix} n_{1} \\ n_{2} \\ \vdots \\ n_{R} \end{bmatrix} \in C^{R}}} & (5) \end{matrix}$ is a white-Gaussian-noise vector with components that are independent and identically distributed with a covariance matrix: R_(n)=E[nn^(H)]=σ_(N) ²I  (6) (n^(H) denotes the Hermitian, or conjugate transpose, operator applied to the vector n). The transmitted N-QAM symbols are uncorrelated, with zero mean value and normalized variance σ_(x) ²=1 for each transmitting antenna, namely: R_(x)=E[xx^(H)]=σ_(x) ²I=I  (7)

Therefore, starting from Eqs. (6) and (7), the signal-to-noise ratio (SNR) transmitted is equal to $\begin{matrix} {{SNR}_{TX} = \frac{T}{\sigma_{N}^{2}}} & (8) \end{matrix}$

With reference to FIG. 1, a random source of bits 10 sends the bits generated to a convolutional encoder 16. The encoded bits are grouped together in blocks OFDM1, OFDM2, . . . , OFDMS/T and sent to a space-frequency (SF) bit interleaver 22, which applies the same law to each block. At output from the interleaving block 22 the signal is forwarded to two QAM mappers 24, 28 in amplitude quadrature, which in turn forward the outputs to OFDM modulators 26, 30.

The signals generated by the OFDM modulators 26, 30 are transmitted on a MIMO channel 32.

At the receiver end, two OFDM demodulators 34, 36 receive the signals from the channel 32.

The demodulators 34, 36 forward the signals received to a MMSE detector 38, with which a soft-interference estimator (SIE) 40 is associated.

The QAM demodulators 42, 44 send their signals to a space-frequency bit de-interleaver 18, which generates a plurality of signals OFDM1, OFDM2, . . . , OFDMS/T.

This plurality of signals is sent at input to a convolutional decoder 14, which generates a bit stream at output. This bit stream can be sent at input to a module 12, which executes the bit-to-bit comparison and generates the parameters of bit error rate (BER) and frame error rate (FER).

The decoder 14 returns the decoded bits and, through a feedback loop, supplies a space-frequency bit interleaver 20, which in turn supplies the data to the soft-interference estimator 40.

As appears from FIG. 1, the estimated interference is subtracted from the previously de-modulated signals. The linear detector calculates the estimates {circumflex over (x)}_(t) of each symbol transmitted x_(t).

If a perfect channel-state information (CSI) is assumed at the receiver end, the de-mapper, using the estimates {circumflex over (x)}_(t), calculates the log-likelihood ratios (LLRs) λ_(t)(m) of the encoded bits, where m=1, 2, . . . , M, and M=log₂(N) is the order of modulation. These soft values are passed on to the de-interleaver and then to a SOVA decoder (SOVA—Soft Output Viterbi Algorithm). The SOVA decoder generates not only decisions on the bits of the data, but moreover generates extrinsic information ξ_(t)(m) with m=1, 2, . . . , M corresponding to the encoded bits. This extrinsic information is used as a-priori knowledge at the detector end, after the bit-interleaving process, to carry out a soft-interference cancellation (SIC).

In this way, the MMSE detector 38 supplies more reliable estimates of the symbol x_(t) transmitted, with t=1, 2, . . . , T, drawing advantage from the soft information fed back by the channel decoder to the input of the MMSE detector 38. Furthermore, the process of de-mapping also takes into account the a-priori probability ξ_(t)(m) for updating the LLR values λ_((m)) that will be used in the new decoding process.

For immediate reference, described hereinafter are the classic approach and the low-complexity approach of the system of soft-interference cancellation described herein

We shall define a function bit_(m)[x(n)], m=1, 2, . . . , M, where M is the degree of modulation. This function returns at output a value {0,1} corresponding to the m-th bit of the symbol x(n), n=1, 2, . . . , N of an N-QAM constellation.

By exploiting the extrinsic information of the LLR, as supplied by the SOVA decoder $\begin{matrix} {{\xi_{t}(m)} = {\ln\quad\frac{P\left\lbrack {{{bit}_{m}\left( x_{t} \right)} = 1} \right\rbrack}{P\left\lbrack {{{bit}_{m}\left( x_{t} \right)} = 0} \right\rbrack}}} & (9) \end{matrix}$ of the encoded bits, a soft-interference estimator (SIE) calculates soft estimates of the symbols transmitted by the t-th antenna, with t=1, 2, . . . , T {tilde over (x)}_(t)=E[x_(t)]m=1, 2, . . . , M  (10)

Assuming that the bits within a symbol are statistically independent of one another, the probability P[x_(t) =x(n)] can be expressed as $\begin{matrix} \begin{matrix} {{P_{t}(n)} = {P\left\lbrack {x_{t} = {x(n)}} \right\rbrack}} \\ {= {\prod\limits_{m = 1}^{M}\frac{\exp\left\{ {{bit}_{m}\left\lbrack {{x(n)}\text{❘}{\xi_{t}(m)}} \right\}} \right.}{1 + {\exp\left\lbrack {\xi_{t}(m)} \right\rbrack}}}} \end{matrix} & (11) \end{matrix}$

At the start of the iterative process, ξ_(t)(m)=0 for every m and t; as a consequence, all the symbols are equally likely, and their probability P_(t)(n) is equal to 2^(−M).

Consequently, the soft-estimates $\begin{matrix} \begin{matrix} {{\overset{\sim}{x}}_{t} = {E\left\lbrack x_{t} \right\rbrack}} \\ {= {\sum\limits_{n = 1}^{N}\left\lbrack {{x(n)}{P_{t}(n)}} \right\rbrack}} \end{matrix} & (12) \end{matrix}$ are equal to zero, and no cancellation is performed in the first iteration.

In the subsequent iterations, since the reliability of the bits supplied by the SOVA decoder increases, the soft-estimates become closer to their true values, and for the t-th antenna, the soft-estimates of the symbols coming from the other (T−1) interfering antennas are cancelled to obtain $\begin{matrix} \begin{matrix} {z_{t} = {y - {\sum\limits_{i \neq t}^{\quad}{h_{i}{\overset{\sim}{x}}_{i}}}}} \\ {= {y - {H{\overset{\sim}{x}}_{\overset{\_}{t}}}}} \end{matrix} & (13) \end{matrix}$ where {tilde over (x)}, is the column vector with the soft-estimates, except for the t-th element, equal to zero.

In addition to calculating Z_(t), also the error covariance matrix is calculated as $\begin{matrix} \begin{matrix} {R_{{\overset{\sim}{e}}_{t}} = {E\left\lbrack {{\overset{\sim}{e}}_{t}{\overset{\sim}{e}}_{t}^{H}} \right\rbrack}} \\ {= {{diag}\begin{bmatrix} \sigma_{{\overset{\sim}{e}}_{1}}^{2} & \cdots & \sigma_{{\overset{\sim}{e}}_{t - 1}}^{2} & 1 & \sigma_{{\overset{\sim}{e}}_{t + 1}}^{2} & \cdots & \sigma_{{\overset{\sim}{e}}_{T}}^{2} \end{bmatrix}}} \end{matrix} & (14) \end{matrix}$ where {tilde over (e)} _(t) =x _(t) −{tilde over (x)} _(t)   (15) and $\begin{matrix} \begin{matrix} {{{\sigma_{{\overset{\sim}{e}}_{t}}^{2} = {E\left\lbrack {{\overset{\sim}{e}}_{t}}^{2} \right\rbrack}};\quad{n = {1,2,\quad\ldots}}}\quad,N} \\ {= {{\sum\limits_{n = 1}^{N}\left\lbrack {{{x(n)}}^{2}{P_{t}(n)}} \right\rbrack} - {{\overset{\sim}{x}}_{t}}^{2}}} \end{matrix} & (16) \end{matrix}$

It may be seen from Eqs. (12) and (16) that the probability P_(t)(n) is calculated N times for each transmitting antenna and is multiplied N times by the corresponding QAM symbol and also by its energy.

The solution described in what follows enables a lower complexity for the system of soft-interference cancellation to be obtained.

Basically, the goal is to reduce the operations performed in expressions (12) and (16). This can be done by regarding the Gray mapping as a combination of two {square root over (√N)}-PAMs along the real and imaginary axes.

The 16-QAM constellation of FIG. 2 is obtained as a superposition of two 4-PAM mappings. The first, along the real axis, identifies the first two bits of the label associated with the symbols of the constellation. In the same way, the 4-PAM mapping along the imaginary axis identifies the last two bits of the label associated with the symbols of the constellation. Hence, Eqs. (12) and (16) can be computed separately for their real and imaginary parts. In this way, {tilde over (x)}_(t) and σ_({tilde over (e)}t) ² are obtained using only √{square root over (N)} probabilities for the real and imaginary parts, instead of N probabilities, as follows: $\begin{matrix} {{\overset{\sim}{\Re\left( x_{t} \right)} = {E\left\lbrack {\Re\left( x_{t} \right)} \right\rbrack}},{m = {1,2}},\ldots\quad,\frac{M}{2}} & (17) \\ {{\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)} = {E\left\lbrack {{\mathfrak{J}}\left( x_{t} \right)} \right\rbrack}},{m = {\frac{M}{2} + 1}},\ldots\quad,M} & (18) \\ {{{\overset{\sim}{\Re\left( x_{t} \right)}}^{2} = {E\left\lbrack {\Re\left( x_{t} \right)}^{2} \right\rbrack}},{m = {1,2}},\ldots\quad,\frac{M}{2}} & (19) \\ {{{\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)}}^{2} = {E\left\lbrack {{\mathfrak{J}}\left( x_{t} \right)}^{2} \right\rbrack}},{m = {\frac{M}{2} + 1}},\ldots\quad,M} & (20) \end{matrix}$

Therefore, {tilde over (x)}_(t) and σ_({tilde over (e)}t) ² can be written as $\begin{matrix} {{\overset{\sim}{x}}_{t} = {\overset{\sim}{\Re\left( x_{t} \right)} + {{\mathfrak{j}}\quad\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)}}}} & (21) \\ {\sigma_{{\overset{\sim}{e}}_{t}}^{2} = {\left\{ {{\overset{\sim}{\Re\left( x_{t} \right)}}^{2} + {\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)}}^{2}} \right\} - {{\overset{\sim}{x}}_{t}}^{2}}} & (22) \end{matrix}$

It should be emphasized that this simplification functions not only for a Gray mapping, but also for other types of mappings that envisage a configuration that is different but can be separated into a real part and an imaginary part.

With reference to what has been seen previously, it is possible to define $\begin{matrix} \begin{matrix} {{p_{t}^{m}(0)} = {P\left\lbrack {{{bit}_{m}\left( x_{t} \right)} = 0} \right\rbrack}} \\ {= \frac{1}{1 + {\exp\left\lbrack {\xi_{t}(m)} \right\rbrack}}} \end{matrix} & (23) \\ {{p_{t}^{m}(1)} = {1 - {p_{t}^{m}(0)}}} & (24) \end{matrix}$ where n=1, 2, . . . , M/2.

In the normalized-power 16-QAM constellation of FIG. 2, assuming that the bits are mutually independent and proceeding as in Eq. (11) $\begin{matrix} {{P\left\lbrack {{\Re\left( x_{t} \right)} = {- \frac{3}{\sqrt{10}}}} \right\rbrack} = {{p_{t}^{1}(0)}{p_{t}^{2}(0)}}} & (25) \\ {{P\left\lbrack {{\Re\left( x_{t} \right)} = {- \frac{1}{\sqrt{10}}}} \right\rbrack} = {{p_{t}^{1}(0)}{p_{t}^{2}(1)}}} & (26) \\ \begin{matrix} {{P\left\lbrack {{\Re\left( x_{t} \right)} = \frac{1}{\sqrt{10}}} \right\rbrack} = {p_{t}^{1}\quad(1){p_{t}^{2}(1)}}} \\ {= {\left\lbrack {1 - {p_{t}^{1}(0)}} \right\rbrack\left\lbrack {1 - {p_{t}^{2}(0)}} \right\rbrack}} \end{matrix} & (27) \\ \begin{matrix} {{P\left\lbrack {{\Re\left( x_{t} \right)} = \frac{3}{\sqrt{10}}} \right\rbrack} = {{p_{t}^{1}(1)}{p_{t}^{2}(0)}}} \\ {= {\left\lbrack {1 - {p_{t}^{1}(0)}} \right\rbrack{p_{t}^{2}(0)}}} \end{matrix} & (28) \end{matrix}$ 10 it follows that expression (17) becomes $\begin{matrix} \begin{matrix} {\overset{\sim}{R\left( x_{t} \right)} = {{{- \frac{3}{\sqrt{10}}}{P\left\lbrack {{\Re\left( x_{t} \right)} = {- \frac{3}{\sqrt{10}}}} \right\rbrack}} -}} \\ {{\frac{1}{\sqrt{10}}{P\left\lbrack {{\Re\left( x_{t} \right)} = {- \frac{1}{\sqrt{10}}}} \right\rbrack}} +} \\ {{\frac{1}{\sqrt{10}}{P\left\lbrack {{\Re\left( x_{t} \right)} = \frac{1}{\sqrt{10}}} \right\rbrack}} +} \\ {\frac{3}{\sqrt{10}}{P\left\lbrack {{\Re\left( x_{t} \right)} = \frac{3}{\sqrt{10}}} \right\rbrack}} \\ {= \frac{\left\lbrack {1 - {2{p_{t}^{1}(0)}}} \right\rbrack\left\lbrack {1 + {2{p_{t}^{2}(0)}}} \right\rbrack}{\sqrt{10}}} \end{matrix} & (29) \end{matrix}$

Likewise, a similar equation is obtained considering Eq. (18), as given below: $\begin{matrix} {\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)} = \frac{\left\lbrack {1 - {2{p_{t}^{3}(0)}}} \right\rbrack\left\lbrack {1 + {2{p_{t}^{4}(0)}}} \right\rbrack}{\sqrt{10}}} & (30) \end{matrix}$

In the same way, Eqs. (19) and (20) can be written as $\begin{matrix} \begin{matrix} {{\overset{\sim}{\Re\left( x_{t} \right)}}^{2} = {{\left( {- \frac{3}{\sqrt{10}}} \right)^{2}{P\left\lbrack {{\Re\left( x_{t} \right)} = {- \frac{3}{\sqrt{10}}}} \right\rbrack}} +}} \\ {{\left( {- \frac{1}{\sqrt{10}}} \right)^{2}{P\left\lbrack {{\Re\left( x_{t} \right)} = {- \frac{1}{\sqrt{10}}}} \right\rbrack}} +} \\ {{\left( \frac{1}{\sqrt{10}} \right)^{2}{P\left\lbrack {{\Re\left( x_{t} \right)} = \frac{1}{\sqrt{10}}} \right\rbrack}} +} \\ {\left( \frac{3}{\sqrt{10}} \right)^{2}{P\left\lbrack {{\Re\left( x_{t} \right)} = \frac{3}{\sqrt{10}}} \right\rbrack}} \\ {= \frac{1 + {8{p_{t}^{2}(0)}}}{10}} \end{matrix} & (31) \\ {{\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)}}^{2} = \frac{1 + {8{p_{t}^{4}(0)}}}{10}} & (32) \end{matrix}$

Extending the same concept to a 64-QAM Gray mapping, it is possible to interpret this mapping as two 8-PAM modulations, as in FIG. 3, along the real and imaginary axes, to obtain $\begin{matrix} {\overset{\sim}{\Re\left( x_{t} \right)} = \frac{\left\lbrack {1 - {2{p_{t}^{1}(0)}}} \right\rbrack\left\lbrack {{4{p_{t}^{2}(0)}{p_{t}^{3}(0)}} + {2{p_{t}^{2}(0)}} - {2p_{t}^{3}} + 3} \right\rbrack}{\sqrt{42}}} & (33) \\ {\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)} = \frac{\left\lbrack {1 - {2{p_{t}^{4}(0)}}} \right\rbrack\left\lbrack {{4{p_{t}^{5}(0)}{p_{t}^{6}(0)}} + {2{p_{t}^{5}(0)}} - {2{p_{t}^{6}(0)}} + 3} \right\rbrack}{\sqrt{42}}} & (34) \\ {{\overset{\sim}{\Re\left( x_{t} \right)}}^{2} = \frac{{32{p_{t}^{2}(0)}{p_{t}^{3}(0)}} + {16{p_{t}^{2}(0)}} - {8{p_{t}^{3}(0)}} + 9}{42}} & (35) \\ {{\overset{\sim}{{\mathfrak{J}}\left( x_{t} \right)}}^{2} = \frac{{32{p_{t}^{5}(0)}{p_{t}^{6}(0)}} + {16{p_{t}^{5}(0)}} - {8{p_{t}^{6}(0)}} + 9}{42}} & (36) \end{matrix}$

To sum up, the symbol estimated by applying Eq. (12) can be directly calculated, avoiding expansion of expression (11) for each symbol transmitted.

Table 1 summarizes the computational costs, per data bit, of the interference cancellation for a system with T=2 and R=3 in the classic case (A) and in the low-complexity case (B) described herein. It has been assumed that the multiplications that involve powers of two do not involve significant costs and hence have not been considered. TABLE 1 16-QAM 64-QAM A B A B MUL 55 9.5 175.3 7.7 SUM 33.5 12 71.7 11.3 DIV 2 2 2 2 EXP 2 2 2 2 CMP 0 0 0 0

There will now be described, once again in a comparative way for immediate reference, how the classic approach and the low-complexity approach described herein result in the structure of the MMSE detector.

In the classic approach, a MMSE detector minimizes the mean-square error between the symbol transmitted x_(t) and the output of the Wiener filter {circumflex over (x)}_(t).

This filter is represented by a vector w_(t)εC^(R) such that {circumflex over (x)}_(t)=w_(t) ^(H)z_(t)  (37)

where z_(t) is the observation vector expressed in Eq. (13).

It can be shown that the MMSE filter is given by w _(t)=(σ_(N) ² I+HR _({tilde over (e)}t) H ^(H))⁻¹ h _(t)  (38)

where σ_(N) ² is the noise power and R_({tilde over (e)}t) is defined in Eq. (14).

The vector w_(t) must be re-calculated for each transmitting antenna t and for each iteration, with consequent considerable computational costs.

The low-complexity approach described herein pursues, instead, the goal of reducing the computational cost of the formula that describes the Wiener filter.

This has been obtained by exploiting the Hermitian structure of R_({tilde over (e)}t) (it is a real diagonal matrix) and a Woodbury formula, as follows: $\begin{matrix} \begin{matrix} {w_{t} = {\left( {{\sigma_{N}^{2}I} + {{HR}_{{\overset{\sim}{e}}_{t}}H^{H}}} \right)^{- 1}h_{t}}} \\ {= {\left( {{\sigma_{N}^{2}I} + {{HR}_{{\overset{\sim}{e}}_{t}}H^{H}}} \right)^{- 1}{Hu}_{t}}} \\ {= {\left\lbrack {{\frac{1}{\sigma_{N}^{2}}I} - {\frac{1}{\sigma_{N}^{2}}{{H\left( {I + {\frac{1}{\sigma_{N}^{2}}R_{{\overset{\sim}{e}}_{t}}H^{H}H}} \right)}^{- 1} \cdot R_{{\overset{\sim}{e}}_{t}}}H^{H}\frac{1}{\sigma_{N}^{2}}}} \right\rbrack{Hu}_{t}}} \\ {= {\left\lbrack {{\frac{1}{\sigma_{N}^{2}}H} - {\frac{1}{\sigma_{N}^{2}}{{H\left( {{\sigma_{N}^{2}I} + {R_{{\overset{\sim}{e}}_{t}}H^{H}H}} \right)}^{- 1} \cdot R_{{\overset{\sim}{e}}_{t}}}H^{H}H}} \right\rbrack u_{t}}} \\ {= {\left\{ {{\frac{1}{\sigma_{N}^{2}}H} - {\frac{1}{\sigma_{N}^{2}}{{H\left( {{\sigma_{N}^{2}I} + {R_{{\overset{\sim}{e}}_{t}}H^{H}H}} \right)}^{- 1} \cdot \left\lbrack {\left( {{R_{{\overset{\sim}{e}}_{t}}H^{H}H} + {\sigma_{N}^{2}I}} \right) - {\sigma_{N}^{2}I}} \right\rbrack}}} \right\} u_{t}}} \\ {= {\left\lbrack {{\frac{1}{\sigma_{N}^{2}}H} - {\frac{1}{\sigma_{N}^{2}}H} + {H\left( {{\sigma_{N}^{2}I} + {R_{{\overset{\sim}{e}}_{t}}H^{H}H}} \right)}^{- 1}} \right\rbrack u_{t}}} \\ {= {{H\left( {{\sigma_{N}^{2}I} + {R_{{\overset{\sim}{e}}_{t}}H^{H}H}} \right)}^{- 1}u_{t}}} \end{matrix} & (39) \end{matrix}$ where $\begin{matrix} {u_{t} = {\begin{bmatrix} 0 \\ \vdots \\ 0 \\ 1 \\ 0 \\ \vdots \\ 0 \end{bmatrix}\begin{matrix} {{\} t} - 1} \\ {{\} T} - t} \end{matrix}}} & (40) \end{matrix}$ is the t-th unit vector of the T-dimensional space. The major advantages introduced by Eq. (39) are the following: the matrix R_({tilde over (e)}t) no longer appears between H and H^(H), as in the formula (38); instead, the product H^(H) H does not depend upon the variance of the symbols estimated, and can be calculated only once and used for each SIC iteration to detect all of the OFDM symbols belonging to the same W-LAN packet; H and H^(H) exchange their relative position. Since the number R of receiving antennas is generally equal to or greater than the number T of transmitting antennas, a matrix (σ_(N) ²I+R_({tilde over (e)}t)H^(H)H)εC^(T×T) must be inverted instead of a matrix (σ_(N) ²I+HR_({tilde over (e)}t)H^(H))εC^(R×R), with R≧T; in expression (38) the complete computation of the inverse matrix (σ_(N) ²I+HR_({tilde over (e)}t)H^(H))⁻¹ is required for each t. Instead, in formula (39), (σ_(N) ²I+R_({tilde over (e)}t) ^(H)H)⁻¹ is multiplied by the unit vector u_(t), so that it is sufficient to calculate only one column of the matrix for each t.

Finally, a further reduction of complexity of the detector block is obtained by defining A=H^(H)H  (41) b=H^(H) y  (42) so that expression (37) can be reformulated as $\begin{matrix} \begin{matrix} {{\hat{x}}_{t} = {w_{t}^{H}z_{t}}} \\ {= {\left\lbrack {{H\left( {{\sigma_{N}^{2}I} + {R_{{\overset{\sim}{e}}_{t}}H^{H}H}} \right)}^{- 1}u_{t}} \right\rbrack^{H}\left( {y - {H{\overset{\sim}{x}}_{t}}} \right)}} \\ {= {{u_{t}^{H}\left( {{\sigma_{N}^{2}I} + {H^{H}{HR}_{{\overset{\sim}{e}}_{t}}}} \right)}^{- 1}{H^{H}\left( {y - {H{\overset{\sim}{x}}_{t}}} \right)}}} \\ {= {{u_{t}^{H}\left( {{\sigma_{N}^{2}I} + {H^{H}{HR}_{{\overset{\sim}{e}}_{t}}}} \right)}^{- 1}\left( {{H^{H}y} - {H^{H}H{\overset{\sim}{x}}_{t}}} \right)}} \\ {= {{H\left( {{\sigma_{N}^{2}I} + {AR}_{{\overset{\sim}{e}}_{t}}} \right)}^{- 1}\left( {b - {A{\overset{\sim}{x}}_{t}}} \right)}} \end{matrix} & (43) \end{matrix}$

In this way, the term y−H{tilde over (x)}_(t) is replaced by b−A{tilde over (x)}_(t), where AεC^(T×T) (instead of HεC^(R×T)) and bεC^(T×1) (instead of yεC^(R×1)).

Neither of these terms depends upon the symbol estimates {tilde over (x)}_(t) so that they can be calculated at the start of the iterative-detection process and stored in a memory, to be used during the subsequent iterations.

Table 2 summarizes the computational costs of MMSE detection, per data bit, averaged over the transmission of S OFDM blocks, for a system with T=2 and R=3 in the classic case (A) and in the low-complexity case (B). TABLE 2 16-QAM 64-QAM A B A B MUL 103 20 68.7 13.3 SUM 73 10.5 48.7 7 DIV 1.5 1.5 1 1 EXP 0 0 0 0 CMP 0 0 0 0

There now follows a description, once again in a comparative way for direct reference, of the criteria of implementation of the classic approach and the low-complexity approach described herein for the de-mapping block.

The classic way of expressing the a-posteriori LLRs of the bits belonging to a symbol x_(t) is $\begin{matrix} \begin{matrix} {{\phi_{t}(m)} = {\ln\frac{P\left\lbrack {{{{bit}_{m}\left( x_{t} \right)} = {1/{\hat{x}}_{t}}},\sigma_{{\hat{x}}_{t}}^{2}} \right\rbrack}{P\left\lbrack {{{{bit}_{m}\left( x_{t} \right)} = {0/{\hat{x}}_{t}}},\sigma_{{\hat{x}}_{t}}^{2}} \right\rbrack}}} \\ {= {\ln\frac{\sum\limits_{n \in {B_{m}{(1)}}}{\exp\left\{ {\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} \right\}}}{\sum\limits_{n \in {B_{m}{(0)}}}{\exp\left\{ {\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} \right\}}}}} \end{matrix} & (44) \end{matrix}$ where i, m=1, 2, . . . , M, σ² _({circumflex over (x)}t) is the variance of the estimate {circumflex over (x)}_(t), ξ_(t) (i) is the a-priori information defined in Eq. (9), and B_(m)(1), B_(m)(0) are the subsets of the QAM symbols, namely B _(m)(1)⊂[1, N]⊂: bεB _(m)(1)

bit_(m) [x(b)]=1  (45) B _(m)(0)⊂[1, N]⊂: bεB _(m)(0)

bit_(m) [x(b)]=0  (46)

The metric representing the probability that a constellation symbol has been transmitted is $\begin{matrix} {{\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} - \frac{{{{\hat{x}}_{t} - {x(n)}}}^{2}}{\sigma_{{\hat{x}}_{t}}^{2}} + {\sum\limits_{i = 1}^{M}{{bit}_{i}{{x(n)}}{\xi_{t}(i)}}}} & (47) \end{matrix}$

Said metric is obtained through the sum of two different contributions. The first contribution depends upon the symbol estimate {circumflex over (x)}_(t), approximated as a Gaussian variable, supplied by the detector. The second contribution depends upon the a-priori information of expression (9) that comes from the SOVA decoder.

Therefore, the linear local regression φ_(t)(m) in expression (44) is obtained from the joint evaluation of both of the terms present in Eq. (47).

In order to avoid computation of N sums of exponential terms and a logarithmic operation, for each LLR it is common practise to approximate expression (44) by introducing the well-known and consolidated Max-Log-Map operator, which is obtained as follows: $\begin{matrix} {{\phi_{t}(m)} \approx {\ln\frac{\max\limits_{n \in {B_{m}{(1)}}}{\exp\left\{ {\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} \right\}}}{\max\limits_{n \in {B_{m}{(0)}}}{\exp\left\{ {\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} \right\}}}}} \\ {\approx {{\max\limits_{n \in {B_{m}{(1)}}}\left\{ {\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} \right\}} - {\max\limits_{n \in {B_{m}{(0)}}}\left\{ {\varphi_{n}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack} \right\}}}} \end{matrix}$

Finally, the extrinsic soft values at output from the detector are obtained by subtracting from expression (48) the a-priori information ξ_(t) (m) coming from the SOVA decoder λ_(t)(m)=φ_(t)(m)−ξ_(t)(m)  (49)

In the low-complexity approach, the aim is to reduce the number of computations in expression (48) by proposing a solution that considers only a subset of the N metrics that the max operator would have taken into account for each linear local regression. The main idea is that, instead of maximizing the entire expression (47), the solution chooses between the metrics that separately maximize either $- \frac{{{{\hat{x}}_{t} - {x(n)}}}^{2}}{\sigma_{{\hat{x}}_{t}}^{2}}$ or $\sum\limits_{i = 1}^{M}{{{bit}_{i}\left\lbrack {x(n)} \right\rbrack}{{\xi_{t}(i)}.}}$

The solution described herein defines two aims, namely, how to select the subsets and how to reduce the complexity of calculation of the metrics.

The first aim is achieved by introducing two criteria, referred to as distance criterion and a-priori-probability criterion. The second aim consists in the explicit computation of just one metric per subset, from which the other metrics can be obtained through a less costly differential method. Said method will be described in what follows.

The low-complexity approach for de-mapping the symbol can be formalized by means of the following relations: $\begin{matrix} {\approx {{\max\left\{ {{\varphi_{j}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack},{\varphi_{l}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack}} \right\}} - {\max\left\{ {{\varphi_{q}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack},{\varphi_{g}\left\lbrack {{\hat{x}}_{t},\sigma_{{\hat{x}}_{t}}^{2},{\xi_{t}(i)}} \right\rbrack}} \right\}}}} & (50) \end{matrix}$ where j and q are selected according to the distance criterion: $\begin{matrix} \begin{matrix} {j \in {{B_{m}(1)}\text{:}}} & {{{{\hat{x}}_{t} - {x(j)}}}^{2} = {\min\limits_{n \in {B_{m}{(1)}}}{{{\hat{x}}_{t} - {x(n)}}}^{2}}} \end{matrix} & (51) \\ \begin{matrix} {q \in {{B_{m}(0)}\text{:}}} & {{{{\hat{x}}_{t} - {x(q)}}}^{2} = {\min\limits_{n \in {B_{m}{(0)}}}{{{\hat{x}}_{t} - {x(n)}}}^{2}}} \end{matrix} & (52) \end{matrix}$ and l and g according to the a-priori-probability criterion: $\begin{matrix} {{l \in {{B_{m}(1)}\text{:}{\sum\limits_{i = 1}^{M}{{{bit}_{i}\left\lbrack {x(l)} \right\rbrack}{\xi_{t}(i)}}}}} = {\max\limits_{n \in {B_{m}{(1)}}}{\sum\limits_{i = 1}^{M}{{{bit}_{i}\left\lbrack {x(n)} \right\rbrack}{\xi_{t}(i)}}}}} & (53) \\ {{g \in {{B_{m}(0)}\text{:}{\sum\limits_{i = 1}^{M}{{{bit}_{i}\left\lbrack {x(g)} \right\rbrack}{\xi_{t}(i)}}}}} = {\max\limits_{n \in {B_{m}{(0)}}}{\sum\limits_{i = 1}^{M}{{{bit}_{i}\left\lbrack {x(n)} \right\rbrack}{\xi_{t}(i)}}}}} & (54) \end{matrix}$

FIGS. 4 and 5 illustrate an example that shows the application of the distance criterion and of the a-priori-probability criterion, respectively.

For reasons of simplicity, a de-normalized 16-QAM constellation has been used in the examples, even though a considerable reduction of complexity can be appreciated in the case of the 64-QAM constellation.

In both FIG. 4 and FIG. 5, the t-th estimated symbol {circumflex over (x)}_(t) at output from the detector is indicated by a cross. Instead, indicated by a white circle is the symbol x(h) (in the example, 1 +j) having the minimum distance from the estimated symbol {circumflex over (x)}_(t) and indicated by a black circle is the symbol x(k) (in the example, −1−j) having associated therewith the maximum a-posteriori probability.

On the basis of the distance criterion, if x(h) is the point closest to {circumflex over (x)}_(t), it is also the point closest in the subset x(n), with nεB_(m)(bit_(m)[x(h)]) for those symbols that have the m-th bit equal to bit_(m)[x(h)]. For this reason, φ_(h)[{circumflex over (x)}_(t), σ_({circumflex over (x)}) _(t) ², ξ_(t)(i)] has been chosen as the only metric explicitly calculated. Furthermore, there remains to be identified for each m=1, 2, . . . , M the point closest to {circumflex over (x)}_(t)in the subset $B_{m}\left( \overset{\_}{{bit}_{m}\left\lbrack {x(h)} \right\rbrack} \right)$ of those symbols having the m-th bit different from bit_(m)[x(h)].

Thanks to the Gray-mapping properties, these points belong to the same row (column) of x(h) if the m-th bit steers the real (imaginary) part of the points of the constellation, as illustrated in FIG. 4. These other metrics can be calculated using the differential method described hereinafter.

The a-priori-probability criterion is very similar to the preceding one, as illustrated in FIG. 5. In this case, the symbol with the maximum a-priori probability is designated by x(k). Hence, it is moreover the symbol in the subset B_(m) (bit_(m)[x(h)] with the highest a-priori probability, for each m=1, 2, . . . , M. Consequently, φ_(k)[{circumflex over (x)}_(t), σ_({circumflex over (x)}) _(t) ², ξ_(t)(i)] is the only metric that has been directly determined. The other M metrics are calculated through the differential method proposed hereinafter and regard the symbol x(n), with $n \in {B_{m}\left( \overset{\_}{{bit}_{m}\left\lbrack {x(k)} \right\rbrack} \right)}$ and maximum a-priori probability. Said symbols are the ones having the m-th bit complemented and the other bits unchanged.

Finally, described in what follows is the calculation of the metrics based upon the differential method.

If we look at Eq. (47) we shall note that it is made up of two terms: one corresponding to the distance between {circumflex over (x)}_(t) and x(n) and the other expressing the a-priori probability of x(n). This method provides a simple way for computing these two terms separately so as to use them as specified in formula (50).

The first term is calculated as described in what follows. With reference to FIG. 6, the cross identifies an estimated symbol {circumflex over (x)}_(t) at output from the detector, whilst the black circles indicate two adjacent QAM symbols x(1) and x(2), aligned horizontally (with ℑ[x(1)]=ℑ[x(2)]).

The constellation is considered de-normalized in such a way that the distances between the symbols are equal to 2. Finally, we define Δ_(I) =[{circumflex over (x)} _(t) −x(1)]  (55) Δ_(Q) =ℑ[{circumflex over (x)} _(t) −x(1)]  (56) and assuming that the squared distance a²=|{circumflex over (x)}_(t)−x(1)|²=Δ² _(1I)+Δ² _(Q) is known, it follows that b²=|{circumflex over (x)}_(t)−x(2)|² can be obtained by applying the Pythagorean theorem as $\begin{matrix} \begin{matrix} {b^{2} = {\left( {2 - \Delta_{I}} \right)^{2} + \Delta_{Q}^{2}}} \\ {= {4 + \Delta_{I}^{2} - {4\Delta_{I}} + \Delta_{Q}^{2}}} \\ {= {\left( {\Delta_{I}^{2} + \Delta_{Q}^{2}} \right) + 4 - {4\Delta_{I}}}} \\ {= {a^{2} + 4 - {4\Delta_{I}}}} \end{matrix} & (57) \end{matrix}$ with

[x(2)]>

[x(1)]. If

[x(2)]<

[x(1)], then it follows that b ² =a ²+4+4Δ_(I)  (58)

Hence, given the squared distance a², it is possible to obtain the squared distance b² of an adjacent point by adding the differential term 4±4Δ_(I).

Similar equations can be deduced also in the case of two vertically aligned symbols (

[x(1)]=

[x(2)]). The expression for b² generalized to two non-adjacent QAM symbols is the following: $\begin{matrix} {b^{2} = \left\{ \begin{matrix} {{a^{2} + {4p^{2}} - {4p\quad\Delta_{I}}},} & \begin{matrix} {{\Re\left\lbrack {{x(1)} - {x(2)}} \right\rbrack} = {2p}} \\ {{{\mathfrak{J}}\left\lbrack {{x(1)} - {x(2)}} \right\rbrack} = 0} \end{matrix} \\ {{a^{2} + {4p^{2}} - {4p\quad\Delta_{Q}}},} & \begin{matrix} {{\Re\left\lbrack {{x(1)} - {x(2)}} \right\rbrack} = 0} \\ {{{\mathfrak{J}}\left\lbrack {{x(1)} - {x(2)}} \right\rbrack} = {2p}} \end{matrix} \end{matrix} \right.} & (59) \end{matrix}$ where pεZ.

In order to simplify the a-priori terms of the constellation of symbols x(n), as emerges from Eq. (47), it is possible to exploit once again the Gray-mapping properties.

The above term can be obtained by summing the a-priori value of the symbol adjacent to the symbol x(n) to the LLR (with appropriate sign) corresponding to the only bit position for which they differ (or via the sum of a number of LLRs if they are not adjacent).

In conclusion, all the metrics required by the distance criterion and by the a-priori-probability criterion can be calculated starting from a known metric.

The other metrics are obtained simply by adding two terms, which correct the two parts of expression (47). Table 3 compares the computational costs per data bit of the classic de-mapping method (A) and the low-cost de-mapping mapping method (B) in a system with T=2 and R=3. TABLE 3 16-QAM 64-QAM A B A B MUL 20 7.5 46.7 6.3 SUM 60 17 196 16 DIV 0.5 0.5 0.3 0.3 EXP 0 0 0 0 CMP 28 8 124 8

Finally, presented hereinafter are some numeric results, obtained from simulations.

A comparison between the classic and low-complexity iterative decoding and detection schemes appears in Table 4 and in FIGS. 7 and 8. The parameters according to which the two solutions are compared are based upon the total computational cost and upon the performance results, respectively. The data appearing in Table 4 represent the average number of mathematical operations between real numbers, such as sums (SUM), subtractions (SUB), multiplications (MUL), divisions (DIV), and comparisons (CMP) per processed data bit. TABLE 4 16-QAM 64-QAM A B A B MUL 366.8 88.5 590.1 65.8 SUM 736.6 485.4 1035.3 473 DIV 8.5 8.5 7 7 EXP 4 4 4 4 CMP 446 406 639.3 407.3

Whereas the initial stage for the MMSE calculation has approximately the same computational cost for both the classic scheme and the low-complexity scheme, the subsequent ones can benefit from the reduction of complexity introduced by the block described previously. Two turbo iterations and one SOVA decoding have been considered with a sliding-window approach so as to avoid having to wait for the entire W-LAN-encoded packet to arrive before starting the channel-decoding operation. The size of the window was selected equal to the length of five constraint-length bits.

In the last iteration, the computational cost for the Viterbi method was considered instead of the computational cost of the SOVA method because, in the case of the Viterbi method, only a hard decision on the bits is made. From an examination of the data regarding sums (SUM) and comparisons (CMP), it may be noted that the number of these operations is not so notably reduced by the low-complexity approach as compared to the classic approach, as occurs, instead, in the case of multiplications (MUL) and divisions (DIV). This occurs because the sums (SUM) and comparisons (CMP) are involved a large number of times also in the SOVA decoding operation, which is common to both of the schemes under comparison.

FIGS. 7 and 8 show the performance curves of the classic and low-complexity receiver architectures, regarding systems with 2×3 antennas for 16-QAM constellation and 64-QAM constellation, respectively. Appearing, moreover, in both figures is the performance obtained by applying the optimum MAP technique instead of the MMSE method. As may be seen, the low-complexity method, which exploits the MMSE-SIC approach does not present any degradation in the performance as compared to the classic approach for all the iterations considered. The gain of the second iteration is approximately 2.1 dB in the case of the 16-QAM constellation and 2.3 dB in the case of the 64-QAM constellation, considering a packet error rate (PER) of 10⁻².

Furthermore, more than three iterations do not seem to be convenient given that the incremental gain for the iterations subsequent to the second is not significant. However, one may use more than three iterations.

A processor or other circuit may execute software that causes the processor to implement one or more of the above-described embodiments, and such a processor may be included in an electronic system such as a computer with wireless capability or wireless router.

Consequently, without prejudice to the principle of the invention, the details of implementation and the embodiments may vary, even significantly, with respect to what is described and illustrated herein purely by way of non-limiting example, without thereby departing from the scope of the invention. 

1. A method for decoding signals encoded with a mapping with different and separable configurations in the real part and the imaginary part of the signal, comprising the operation of decoding in a distinct way the real part and the imaginary part of said signals.
 2. The method according to claim 1, wherein said decoding operation further comprising the steps of: subjecting said encoded signals to a Wiener filtering, and carrying out a Minimum-Mean-Square-Error (MMSE) detection that minimizes the mean-square error between said encoded signals and the result of said Wiener filtering.
 3. The method according to claim 1, applied to encoded signals transmitted from a plurality of transmitting antennas, wherein said decoding operation further comprises the steps of performing a soft estimation of the signals transmitted by each of said antennas of said plurality and of cancelling, using the results of said soft estimation, the interference produced on the signals transmitted from each of said antennas of said plurality by the signals transmitted from the other antennas of said plurality.
 4. The method according to claim 1, applied to signals encoded according to a Gray mapping.
 5. The method according to claim 1, applied to signals encoded with two Quadrature-Amplitude-Modulation (QAM) mappings.
 6. The method according to claim 1, applied to encoded signals transmitted on a selective Multiple-Input/Multiple-Output (MIMO) channel.
 7. The method according to claim 1, applied to encoded signals multiplexed with an Orthogonal-Frequency-Division-Multiplexing (OFDM) technique.
 8. A system for the transmission of signals comprising: a transmitter configured for transmitting signals encoded with a mapping with different and separable configurations in the real part and the imaginary part of the signal; and a receiver configured for decoding in a distinct way the real part and the imaginary part of said signals.
 9. The system according to claim 8, wherein said receiver comprises: a filter for subjecting said encoded signals to a Wiener filtering; and a Minimum-Mean-Square-Error (MMSE) detector configured for minimizing the mean-square error between said encoded signals and the result of said Wiener filtering.
 10. The system according to claim 8 wherein: said transmitter comprises a plurality of transmitting antennas for transmitting said encoded signals; and said receiver comprises a soft decoder for performing a soft estimation of the signals transmitted by each of said antennas of said plurality, and cancelling, using the results of said soft estimation, the interference produced on the signals transmitted from each of said antennas of said plurality by the signals transmitted from the other antennas of said plurality.
 11. The system according to claim 8, wherein said transmitter is configured for transmitting signals encoded according to a Gray mapping.
 12. The system according to claim 8, wherein said transmitter is configured for transmitting signals encoded with two QAM mappings.
 13. The system according to claim 8, wherein said transmitter is configured for transmitting encoded signals transmitted on a selective Multiple-Input/Multiple-Output (MIMO) channel.
 14. The system according to claim 8, wherein said transmitter is configured for transmitting encoded signals multiplexed with an Orthogonal-Frequency-Division-Multiplexing (OFDM) technique.
 15. A receiver for decoding signals encoded with a mapping with different and separable configurations in the real part and the imaginary part of the signal, said receiver being configured for decoding in a distinct way the real part and the imaginary part of said signals.
 16. The receiver according to claim 15, comprising: a filter for subjecting said encoded signals to a Wiener filtering; and a Minimum-Mean-Square-Error detector configured for minimizing the mean-square error between said encoded signals and the result of said Wiener filtering.
 17. The receiver according to claim 15, wherein: the receiver is configured for receiving said encoded signals from a plurality of transmitting antennas; and the receiver comprises a soft decoder for performing a soft estimation of the signals transmitted by each of said antennas of said plurality, and cancelling, using the result of said soft estimation, the interference produced on the signals transmitted from each of said antennas of said plurality by the signals transmitted from the other antennas of said plurality.
 18. A computer-program product loadable into the memory of at least one computer and comprising software code portions for implementing the method according to claim
 1. 19. A method, comprising: receiving a signal representing a received data symbol that includes data; generating an estimated data symbol from the signal by, calculating a real part of the estimated data symbol, calculating an imaginary part of the estimated data symbol separately from the calculating of the real part, and combining the real and imaginary parts to generate the estimated data symbol; and recovering the data from the estimated data symbol.
 20. The method of claim 19 wherein the receiving comprises receiving the signal with at least one of multiple receiving antennas.
 21. The method of claim 19, further comprising: wherein receiving the signal comprises receiving the signal via a transmission path; and wherein recovering the data comprises, modifying the estimated data symbol based on a transfer function associated with the transmission path, generating a difference between the received data symbol and the modified estimated data symbol, filtering the difference to obtain a filtered data symbol, and recovering the data from the filtered data symbol; reconstructing a transmitted data symbol from the recovered data; calculating an error between the filtered data symbol and the reconstructed transmitted data symbol; and adjusting a quantity used in the calculating of one of the real and imaginary parts of the estimated data symbol to reduce the error.
 22. The method of claim 19, further comprising: wherein receiving the signal comprises receiving the signal via multiple transmission paths; and wherein recovering the data comprises, modifying the estimated data symbol based on transfer functions respectively associated with the transmission paths, generating a difference between the received data symbol and the modified estimated data symbol, filtering the difference to obtain a filtered data symbol, and recovering the data from the filtered data symbol; reconstructing a transmitted data symbol from the recovered data; calculating a mean-square error between the filtered data symbol and the reconstructed transmitted data symbol; and adjusting a quantity used in the calculating of one of the real and imaginary parts of the estimated data symbol to reduce the mean-square error.
 23. The method of claim 19 wherein generating the estimated data symbol comprises: generating an estimated interference component representing interference on the signal from other signals carrying other data symbols; subtracting the estimated interference component from the signal to generate a reduced-interference received signal; and generating the estimated data symbol from the reduced-interference signal.
 24. The method of claim 19, further comprising: wherein receiving the signal comprises receiving the signal via a transmission path; wherein recovering the data comprises, modifying the estimated data symbol based on a transfer function associated with the transmission path, generating a difference between the received data symbol and the modified estimated data symbol, filtering the difference to obtain a filtered data symbol, and recovering the data from the filtered data symbol; reconstructing a transmitted data symbol from the recovered data; calculating an error between the filtered data signal and the reconstructed transmitted data symbol; calculating from the error an estimated interference on the signal; reducing interference on the signal based on the estimated interference; and wherein generating the estimated data symbol comprises generating the estimated symbol from the reduced-interference signal.
 25. The method of claim 19, further comprising: wherein receiving the signal comprises receiving the signal via multiple transmission paths; wherein recovering the data comprises, modifying the estimated data symbol based on transfer functions respectively associated with the transmission paths, generating a difference between the received data symbol and the modified estimated data symbol, filtering the difference to obtain a filtered data symbol, and recovering the data from the filtered data symbol; reconstructing a transmitted data symbol from the recovered data; calculating an error between the filtered data signal and the reconstructed transmitted data symbol; calculating from the error an estimated interference on the signal; subtracting the estimated interference from the signal to generate a reduced-interference signal; and wherein generating the estimated data symbol comprises generating the estimated symbol from the reduced-interference signal.
 26. A receiver, comprising: an antenna operable to receive a signal representing a received data symbol that includes data; a detector operable to generate an estimated data symbol from the signal by, calculating a real part of the estimated data symbol, calculating an imaginary part of the estimated data symbol separately from the calculating of the real part, and combining the real and imaginary parts to generate the estimated data symbol; and a data-recovery circuit operable to recover the data from the estimated data symbol.
 27. An electronic system, comprising: a receiver, including, an antenna operable to receive a signal representing a received data symbol that includes data, a detector operable to generate an estimated data symbol from the signal by, calculating a real part of the estimated data symbol, calculating an imaginary part of the estimated data symbol separately from the calculating of the real part, and combining the real and imaginary parts to generate the estimated data symbol, and a data-recovery circuit operable to recover the data from the estimated data symbol. 